{{!
  Copyright (c) HashiCorp, Inc.
  SPDX-License-Identifier: BUSL-1.1
}}

<PageHeader as |p|>
  <p.top>
    <Page::Breadcrumbs @breadcrumbs={{@breadcrumbs}} />
  </p.top>
  <p.levelLeft>
    <h1 class="title is-3">
      {{if @model.isNew "Create Library" "Edit Library"}}
    </h1>
  </p.levelLeft>
</PageHeader>

<hr class="is-marginless has-background-gray-200" />

<form {{on "submit" (perform this.save)}} class="has-top-margin-m">
  <MessageError @errorMessage={{this.error}} />

  {{#each @model.formFields as |field|}}
    <FormField @attr={{field}} @model={{@model}} @modelValidations={{this.modelValidations}} />
  {{/each}}

  <hr class="has-background-gray-200 has-top-margin-l" />

  <div class="has-top-margin-l has-bottom-margin-l is-flex">
    <Hds::Button
      @text={{if @model.isNew "Create library" "Save"}}
      data-test-save
      type="submit"
      disabled={{this.save.isRunning}}
    />
    <Hds::Button
      @text="Cancel"
      @color="secondary"
      class="has-left-margin-xs"
      data-test-cancel
      disabled={{this.save.isRunning}}
      {{on "click" this.cancel}}
    />
    {{#if this.invalidFormMessage}}
      <AlertInline
        @type="danger"
        class="has-top-padding-s"
        @message={{this.invalidFormMessage}}
        data-test-invalid-form-message
      />
    {{/if}}
  </div>
</form>